package com.qckj.amz.service;

import com.qckj.amz.domain.ProductImage;
import com.qckj.common.core.domain.AjaxResult;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

/**
 * 产品图片Service接口
 *
 * @author luchuan
 * @since 1.0 2022-03-16
 */
public interface IProductImageService  {
    /**
     * 查询产品图片
     *
     * @param attId 产品图片ID
     * @return 产品图片
     */
    ProductImage findById(Long attId);

    /**
     * 分页查询产品图片列表
     *
     * @param req 产品图片
     * @return 产品图片集合
     */
    Page<ProductImage> findProductImagePage(ProductImage req);

    /**
     * 查询产品图片列表
     *
     * @param req 产品图片
     * @return 产品图片集合
     */
    List<ProductImage> findProductImageList(ProductImage req);

    /**
     * 新增产品图片
     *
     * @param productImage 产品图片
     * @return 结果
     */
    void save(ProductImage productImage);

    /**
     * 批量删除产品图片
     *
     * @param attIds 需要删除的产品图片ID
     * @return 结果
     */
    void deleteByIds(List<Long> attIds);

    /**
     * 删除产品图片信息
     *
     * @param attId 产品图片ID
     * @return 结果
     */
    void deleteProductImageById(Long attId);

    /**
     * 获取图片列表
     * @param pid
     * @param attType
     * @return
     */
    Page<ProductImage> getList(Long pid, String attType);

    /**
     * 获取图片列表
     * @param tableData
     * @return
     */
    Page<ProductImage> listProductImage(Map<String, Object> tableData);

    /**
     * 更改图片目录
     * @param attrIdList    图片集合
     * @param pid           新目录pid
     * @return
     */
    AjaxResult move(List<Long> attrIdList, Long pid);

}
